package br.unisinos.aidk.graph;

import java.util.LinkedList;

public abstract class Problem<V> {
	
	private V initialState;

	public V getInitialState() {
		return initialState;
	}

	public void setInitialState(V initialState) {
		this.initialState = initialState;
	}

	public abstract boolean isGoal(V ref);	
	public abstract LinkedList<Node<V>> expand(Node<V> node);
}
